`:top
`!Interactive Ruby Shell`! (`!IRB`!) ist ein `F33f`_`[Kommandozeileninterpreter`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Kommandozeileninterpreter]`_`f (REPL) für die `F33f`_`[Programmiersprache`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Programmiersprache]`_`f `F33f`_`[Ruby`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Ruby_(Programmiersprache)]`_`f.
Das Programm wird von der `F33f`_`[Kommandozeile`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Kommandozeile]`_`f gestartet und ermöglicht die Ausführung von Ruby-Kommandos, wobei das Ergebnis unmittelbar zurückgegeben wird. Dadurch kann man in Echtzeit mit Ruby experimentieren oder ad hoc kleinere Berechnungen mit Ruby durchführen, wie mit einem `F33f`_`[Taschenrechner`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Taschenrechner]`_`f. IRB kennt die zuletzt eingegebenen Kommandos, die durch Verwendung der Pfeiltasten zurückgeholt und gegebenenfalls editiert werden können, um das Absetzen ähnlicher Kommandos und Wiederholungen zu vereinfachen. Auf `F33f`_`[POSIX`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=POSIX]`_`f-Systemen (`F33f`_`[Linux`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Linux]`_`f, `F33f`_`[Unix`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Unix]`_`f) hat man Zugriff auf die `F33f`_`[Job-Kontrolle`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Job_(EDV)]`_`f, kann wie ein `F33f`_`[Shellskript`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Shellskript]`_`f direkt über das Internet kommunizieren und mit Servern interagieren.
Die Software wurde von Keiju Ishitsuka entwickelt und gehört in der Regel zum Lieferumfang von Ruby dazu.
Verwendung:
`B100`F9d9irb [ Optionen ] [ Programmdatei ] [ Argument1... ]`f`b
>>Contents
• `F0af`_`[Beispiel`#beispiel]`_`f
• `F0af`_`[Weblinks`#weblinks]`_`f
• `F0af`_`[Einzelnachweise`#einzelnachweise]`_`f
-─
>>Beispiel
`B100`F9d9irb(main):001:0> n = 5`f`b
`B100`F9d9=> 5`f`b
`B100`F9d9irb(main):002:0> def fact(n)`f`b
`B100`F9d9irb(main):003:1> if n <= 1`f`b
`B100`F9d9irb(main):004:2> 1`f`b
`B100`F9d9irb(main):005:2> else`f`b
`B100`F9d9irb(main):006:2* n * fact(n - 1)`f`b
`B100`F9d9irb(main):007:2> end`f`b
`B100`F9d9irb(main):008:1> end`f`b
`B100`F9d9=> nil`f`b
`B100`F9d9irb(main):009:0> fact(n)`f`b
`B100`F9d9=> 120`f`b
>>Weblinks
• `*Try Ruby.`* Abgerufen am 15. Januar 2012 (Online IRB).
• `*When Trouble Strikes.`* In: `*ruby-doc.org.`* Abgerufen am 15. Januar 2012 (Kapitel aus `*Programming Ruby`*).
• `*Interactive Ruby Shell.`* In: `*ruby-doc.org.`* Abgerufen am 21. Mai 2016 (Kapitel aus `*Programming Ruby`*).
• `*Interactive Ruby Shell.`* In: `*ruby-doc.org.`* Abgerufen am 21. Mai 2016 (Kapitel aus `*Programming Ruby`*).
>>Einzelnachweise
`:cite-note-1d02b10656339839-1`!1.`! Release 1.16.0. 16. Dezember 2025 (abgerufen am 17. Dezember 2025).
`:cite-note-2`!2.`! `*Rubys Lizenzbedingungen.`* Abgerufen am 15. Januar 2012.
`c`F0af`_`[↑ Back to top`#top]`_`f`a